The present invention relates to a data input/output (I/O) system, and, more particularly, to a data I/O system provided with a function block having a memory.
Recently, recording devices such as DVD-ROMs and personal digital assistants (PDAs) having functions that receive and output audio signals are popular. A PDA comprises a microprocessor system as a data I/O system. The microprocessor system includes a function block that receives and outputs an analog signal. For example, the function block generates a driving signal of a stepping motor that moves a head of a recorder. The function block comprises a digital-to-analog (D/A) converter and the D/A converter is connected to an address bus and a data bus, as are a CPU and a main memory of the microprocessor system.
The number of digital drive data (waveform data) necessary for rotating a stepping motor are stored in the main memory. The CPU reads the drive data from the main memory at predetermined intervals and transfers the data to the D/A converter. That is, the drive data is repetitively transferred to the D/A converter from the main memory. The D/A converter generates a driving signal having a voltage that corresponds to the drive data. In this manner, the driving signal having a predetermined analog waveform is supplied to a stepping motor in order to rotate the stepping motor.
However, requiring the CPU to repetitively transfer drive data from the main memory to the D/A converter pits a load on the CPU. Further, when the CPU performs an operation of another application, the CPU cannot transfer the drive data. Consequently, the desired analog waveform is not obtained.
To reduce the load on the CPU, a memory can be provided to the function block having the D/A converter. However, the function block memory is not connected directly to the address bus and the data bus. Accordingly, I/O port addresses used for allowing the CPU to input and output data to and from the function block need to be allocated for the number of data pieces in the function block memory. The microprocessor system then has a problem of having an insufficient number of I/O port addresses.